
package com.hlkj.pay.service.user;
/*
 * Hlpay-Plus aggregate payment system.
 * Copyright (c) 2024-2025 Hlpay Team Copyright has the right of final interpretation.
 */

import java.util.List;
import java.util.Set;

import com.hlkj.framework.common.pojo.PageParam;
import com.hlkj.framework.common.pojo.PageResult;
import com.hlkj.pay.enums.UserEnum;
import com.hlkj.pay.infrastructure.model.user.UserCouponDO;
import com.hlkj.pay.infrastructure.model.user.UserCouponInfoDO;
/**
 * @author HlpayTeam
 * @date 2024/10/25 14:37
 */
public interface IUserCouponService {
	
	/**
	 *
	 * @param userId
	 * @param pageParam
	 * @return
	 */
	PageResult<UserCouponDO> userCouponList(Long userId,Integer status, PageParam pageParam);
	/**
	 *
	 * @param couponInfoId
	 * @return
	 */
	List<UserCouponInfoDO> couponInfoList(Set<Long> couponInfoId);
	/**
	 *
	 * @param userCouponDOList
	 */
	
	void addUserCouponList(List<UserCouponDO> userCouponDOList);
	/**
	 *
	 * @param id
	 * @return
	 */
	UserCouponDO queryUserCoupon(Long id);
	/**
	 *
	 * @param id
	 * @param userCouponStatus
	 */
	void updateCouponStatus(Long id, UserEnum.USER_COUPON_STATUS userCouponStatus);
}
